<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>图书列表展示</title>
    <link rel="stylesheet" href="css/bootstrap.min.css">

    <link rel="stylesheet" href="css/list.css">
    <script type="text/javascript" src="js/jquery.min.js"></script>
    <script type="text/javascript" src="js/bootstrap.min.js"></script>
    <script src="js/jq-paginator.js"></script>

</head>

<body>
<div class="bookContainer">
    <h2>图书列表展示</h2>
    <div class="navbar-justify-between">
        <div>
            <button class="btn btn-outline-info" type="button" onclick="location.href='book_add.html'">添加图书</button>
            <button class="btn btn-outline-info" type="button" onclick="batchDelete()">批量删除</button>
        </div>
    </div>

    <table>
        <thead>
        <tr>
            <td>选择</td>
            <td class="width100">图书ID</td>
            <td>书名</td>
            <td>作者</td>
            <td>数量</td>
            <td>定价</td>
            <td>出版社</td>
            <td>状态</td>
            <td class="width200">操作</td>
        </tr>
        </thead>
        <tbody>

        </tbody>
    </table>

    <div class="demo">
        <ul id="pageContainer" class="pagination justify-content-center"></ul>
    </div>
    <script>

        getBookList();

        function getBookList() {
            $.ajax({
                type: "get",
                url: "/book/getBookListByPage" + location.search,
                success: function (result) {
                    if (result.resultCode == "UN_LOGIN") {
                        location.href = "login.html";
                        return;
                    }

                    var jointHtml = "";
                    var pageResult = result.data;
                    for (var book of pageResult.records) {
                        jointHtml += '<tr>';
                        jointHtml += '<td><input type="checkbox" name="selectBook" value="' + book.id + '" id="selectBook" class="book-select"></td>';
                        jointHtml += '<td>' + book.id + '</td>';
                        jointHtml += '<td>' + book.bookName + '</td>';
                        jointHtml += '<td>' + book.author + '</td>';
                        jointHtml += '<td>' + book.count + '</td>';
                        jointHtml += '<td>' + book.price + '</td>';
                        jointHtml += '<td>' + book.publish + '</td>';
                        jointHtml += '<td>' + book.statusCN + '</td>';
                        jointHtml += '<td> <div class="op">';

                        if (book.statusCN === null) {
                            // 状态为null时，按钮呈现灰色，禁用点击事件
                            jointHtml += '<a href="javascript:void(0)" class="disabled-link" style="color: gray; pointer-events: none;">修改</a>';
                            jointHtml += '<a href="javascript:void(0)" class="disabled-link" style="color: gray; pointer-events: none;">删除</a>';
                        } else {
                            // 状态不为null时，正常显示按钮
                            jointHtml += '<a href="book_update.html?bookId=' + book.id + '">修改</a>';
                            jointHtml += '<a href="javascript:void(0)" onclick="deleteBook(' + book.id + ')">删除</a>';
                        }


                        jointHtml += '</div>';
                        jointHtml += '</td>';
                        jointHtml += '</tr>';
                    }
                    $("tbody").html(jointHtml);

                    //翻页信息
                    $("#pageContainer").jqPaginator({
                        totalCounts: pageResult.totalCount, //总记录数
                        pageSize: 10,    //每页的个数
                        visiblePages: 5, //可视页数
                        currentPage: pageResult.pageRequest.currentPage,  //当前页码
                        first: '<li class="page-item"><a class="page-link">首页</a></li>',
                        prev: '<li class="page-item"><a class="page-link" href="javascript:void(0);">上一页<\/a><\/li>',
                        next: '<li class="page-item"><a class="page-link" href="javascript:void(0);">下一页<\/a><\/li>',
                        last: '<li class="page-item"><a class="page-link" href="javascript:void(0);">最后一页<\/a><\/li>',
                        page: '<li class="page-item"><a class="page-link" href="javascript:void(0);">{{page}}<\/a><\/li>',
                        //页面初始化和页码点击时都会执行
                        onPageChange: function (page, type) {
                            console.log("第" + page + "页, 类型:" + type);
                            if (type == "change") {
                                location.href = "book_list.html?currentPage=" + page;
                            }
                        }
                    });
                },
                error: function (result) {
                    if (result.status == 401) {
                        location.href = "login.html";
                    }
                }
            });
        }


        function deleteBook(bookId) {
            var isDelete = confirm("确认删除?");
            if (isDelete) {
                //删除图书
                $.ajax({
                    type: "post",
                    url: "/book/updateBook",
                    data: {
                        id: bookId,
                        status: 0
                    },
                    success: function (result) {
                        if (result != null && result.resultCode == "SUCCESS" && result.data == "") {
                            alert('删除成功!');
                            location.href = "book_list.html";
                        } else {
                            alert(result);
                        }
                    },
                    error: function (error) {
                        console.log(error);
                        //用户未登录
                        if (error != null && error.status == 401) {
                            location.href = "login.html";
                        }
                    }
                });
            }
        }

        function batchDelete() {
            var isDelete = confirm("确认批量删除?");
            if (isDelete) {
                //获取复选框的id
                var ids = [];
                $("input:checkbox[name='selectBook']:checked").each(function () {
                    ids.push($(this).val());
                });

                $.ajax({
                    type: "post",
                    url: "/book/batchDelete?ids=" + ids,
                    success: function (result) {
                        if (result != null && result.resultCode == "SUCCESS" && result.data == "") {
                            //批量删除成功
                            location.href = "book_list.html"
                            alert("批量删除成功");
                        } else {
                            alert(result);
                        }
                    },
                    error: function (error) {
                        console.log(error);
                        //用户未登录
                        if (error != null && error.status == 401) {
                            location.href = "login.html";
                        }

                    }
                });
            }
        }

    </script>
</div>
</body>

</html>